package logica;

import objetosGraficos.Elemento;

/**
 * Clase que provee un único método estático para comprobar si dos
 * objetos gráficos están colisionando.
 *
 */
public class Colision {
	
	/**
	 * Comprueba si dos objetos gráficos están colisionando.
	 * @param l1 el primer objeto gráfico.
	 * @param l2 el segundo objeto gráfico.
	 * @return true si los objetos colisionan, false en otro caso.
	 */
	public static boolean colision (Elemento l1, Elemento l2){
		boolean salida = false;
		
		int ladoIzquierdo = l1.getX();
		int ladoDerecho = l1.getX() + l1.getWidth();
		int superior = l1.getY();
		int il2ferior = l1.getY() + l1.getHeight();
		
		int l2ladoIzquierdo = l2.getX();
		int l2ladoDerecho = l2.getX() + l2.getWidth();
		int l2superior = l2.getY();
		int l2il2ferior = l2.getY() + l2.getHeight();
		
		if(l2ladoIzquierdo < ladoDerecho)
	        if(l2ladoDerecho > ladoIzquierdo)
	        	if(l2superior < il2ferior)
	        		if(l2il2ferior > superior)
	        			salida = true;
	    
	    return salida;
	}
}
